package com.cloudkinto.service.orderoutput.openapivo;

import com.cloudkinto.common.constant.SysConstant;
import com.cloudkinto.service.orderoutput.vo.OrderOutputPackageAddReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * @author zhangyy
 * @date 2020/9/8 16:14
 * @description:
 */
@Data
@ApiModel
public class OpenApiOrderOutputAddReq {
    /**
     * 1 一件代发 2 fba转运
     */
//    private Integer orderType;

    @ApiModelProperty("发货时间")
    private Date sendDate;

    @ApiModelProperty("店铺id")
    private Long shopId;

    @ApiModelProperty("仓库id")
    @NotNull(message = "请选择仓库")
    private Long storageId;

    @ApiModelProperty("平台")
    private String platform;

    @ApiModelProperty("平台单号")
    private String platformNumber;
//    private Long companyId;

    /**
     * 顾客自定单号
     */
    @ApiModelProperty("订单号")
    private String orderNo;

    @ApiModelProperty("送达时间")
    private String receiverName;

    @ApiModelProperty("电话")
    private String telPhone;

    @ApiModelProperty("邮编")
    @NotNull(message = "请填写邮编")
    private String postCode;

    @ApiModelProperty("区域")
    private String area;

    @ApiModelProperty("地址")
    private String address;
//    private String sku;
//    private Integer count;

    @ApiModelProperty("备注")
    private String tips;

    @ApiModelProperty("配送时间")
    private String deliveryDate;

    @ApiModelProperty("送达时间")
    private String deliveryTime;

    @ApiModelProperty("运输类型")
    private Integer shipmentType;

    /**
     * 代收款
     */
    @ApiModelProperty("代收款")
    private Integer cod;

    @ApiModelProperty("文件id")
    private Long fileId;

    @ApiModelProperty("面单文件id")
    private Long labelFileId;

    @ApiModelProperty("运输公司id")
    private Long trackId;

    @ApiModelProperty("运输费用")
    private double shipFee;

    @ApiModelProperty("操作费用")
    private double operateFee;

    @ApiModelProperty("po号")
    private String poNumber;

    @ApiModelProperty("订单备注")
    private String orderNoTips;

    @ApiModelProperty("发货人名称")
    private String cargoOwner;

    @ApiModelProperty("发货人地址")
    private String cargoAddress;

    @ApiModelProperty("发货人邮编")
    private String cargoCode;

    @ApiModelProperty("发货人电话")
    private String cargoPhone;

    @ApiModelProperty("运单号")
    private String trackNumber;

//    Df订单信息
    @ApiModelProperty("Df订单信息")
    private OpenApiDFOrderReq dfOrder;



    @NotEmpty(message = "请填写SKU信息")
    List<OpenApiOrderOutputProductAddReq> productList;
}
